package com.dr.service;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.dr.entity.Orderdetail;
import com.dr.entity.Orderinfo;
import com.dr.entity.Shopcart;

public interface OrderinfoService {
	/**
	 * 多条件查询
	 * @param page页码
	 * @param limit条数
	 * @param map集合
	 * @return查询的数据
	 */
	public List<Orderinfo> AllOrderinfo(Orderinfo o);
	/**
	 * 查询行数
	 * @param map集合
	 * @return 返回int类型的行数
	 */
	public Integer getCount(Orderinfo o);
	/**
	 * 修改
	 * @param p对象
	 * @return 数据库受影响的行数
	 */
	 public Integer updateOrderinfo(Orderinfo o);
	 /**
	  * 查询
	  * @param orderId
	  * @return
	  */
	 public List<Orderdetail> findOrder(String orderId);
	 
	 public List<Shopcart> findShopByIds(String idStr,Integer id);
	 /**
		 * 添加订单
		 * @param o
		 * @return
		 */
		public int insertOrderinfo(Orderinfo o);
		/**
		 * 添加到订单详情
		 * @param o
		 * @return
		 */
		public int insertOrderdetail(Orderdetail o);
		/**
		 * 修改支付后的订单状态
		 * @param id
		 * @return
		 */
		public int editOrderInfoByOrderId(@Param("id")String id);
		/**
		 * 通过用户查询所有订单
		 */
		 public List<Orderinfo> findOrderinfo(@Param("userId")Integer userId,@Param("status")Integer status,@Param("orderId")String orderId );
		   /**
		* 查询未评价的产品
		*/
		   public List<Orderdetail> findNoCommentByOrderId(String orderId);
		   /**
		* 根据订单号查询订单详情
		*/
		public List<Orderdetail> findOrderDetailByOrderId(String orderId);
		/**
		 * 根据订单号查询订单
		 */
		public Orderinfo findOrderinfoByOrderId(String orderId);
		/**
		 * 修改明细表是否已评价为1
		 */
		public int updateIscommentById(Integer id);
		 /**
	        * 修改订单号修改订单状态为3
	        * @param id
	        * @return
	        */
	       public int editOrderInfoSh(String orderId);
	       /**
	        * 订单完成
	        */
	       public int editOrderInfoWc(String orderId);
	       /**
	        * 查询待支付的订单
	        */
	       public int CountSta(Integer status);
}
